The Internet is a vast computer network consisting of many smaller networks that span the world. A network provides a distributed communicating system of computers that are interconnected by various electronic communication links and computer software protocols. Because of the Internet's distributed and open network architecture, it is possible to transfer data from one computer to any other computer worldwide. In 1991, the World-Wide-Web (WWW or Web) revolutionized the way information is managed and distributed.
The Web is based on the concept of hypertext and a transfer method known as Hypertext Transfer Protocol (HTTP) which is designed to run primarily over a Transmission Control Protocol/Internet Protocol (TCP/IP) connection that employs a standard Internet setup. A server computer may issue the data and a client computer displays or processes it. TCP may then convert messages into streams of packets at the source, then reassemble them back into messages at the destination. Internet Protocol (IP) handles addressing, seeing to it that packets are routed across multiple nodes and even across multiple networks with multiple standards. HTTP protocol permits client systems connected to the Internet to access independent and geographically scattered server systems also connected to the Internet.
Client side browsers, such as Netscape Navigator and/or Microsoft Internet Explorer (MSIE) provide graphical user interface (GUI) based client applications that implement the client side portion of the HTTP protocol. One format for information transfer is to create documents using Hypertext Markup Language (HTML). HTML pages are made up of standard text as well as formatting codes that indicate how the page should be displayed. The client side browser reads these codes in order to display the page. A web page may be static and requires no variables to display information or link to other predetermined web pages. A web page is dynamic when arguments are passed which are either hidden in the web page or entered from a client browser to supply the necessary inputs displayed on the web page. Common Gateway Interface (CGI) is a standard for running external programs from a web server. CGI specifies how to pass arguments to the executing program as part of the HTTP server request. Commonly, a CGI script may take the name and value arguments from an input form of a first web page which may be used as a query to access a database server and generate an HTML web page with customized data results as output that is passed back to the client browser for display.
The Web is a means of accessing information on the Internet that allows a user to “surf the web” and navigate Internet resources intuitively, without technical knowledge. The Web dispenses with command-line utilities, which typically require a user to transmit sets of commands to communicate with an Internet server. Instead, the Web is made up of millions of interconnected web pages, or documents, which may be displayed on a computer monitor. Hosts running special servers provide the Web pages. Software that runs these Web servers is available on a wide range of computer platforms including PC's.
A Uniform Resource Identifier (URI) is a compact string of characters for identifying an abstract or physical resource. URIs, is the generic set of all names and addresses that refer to objects on the Internet. URIs that refer to objects accessed with existing protocols are known as URLs. A URL is the address of a file accessible on the Internet. The URL contains the name of the protocol required to access the resource, a domain name, Fully Qualified Domain Name (FQDN), or IP address that identifies a specific computer on the Internet, and a hierarchical description of a file location on the computer. In addition, the last (optional) part of the URL may be a “?” followed by a query string having name/value pairs for parameters (e.g. “?size=small&quantity=3”) or a “#” followed by a fragment identifier indicating a particular position within the specified document.
The URI “http://www.example.com:80/index.html#appendix” is the concatenation of several components where “http:” is the scheme or protocol, “//www.example.com” is the FQDN having “www” as the host of the domain name “example.com”, “:80” is the port connection for the HTTP server request, “index.html” is the filename located on the server, “#appendix” is the identifier to display a fragment of the HTML file called “index”. The URL “http://www.example.com” also retrieves an HTML file called “index” on a HTTP server called “example.com”. By default, when either a port or filename is omitted upon accessing a HTTP server via a URL, the client browser interprets the request by connecting via port 80, and retrieving the HTML file called “index”.
A domain name consists of two parts: a host and a domain. Technically, the letters to the right of the “dot” (e.g., tut.net) are referred to as Top Level Domains (TLDs), while hosts, computers with assigned IP addresses that are listed in specific TLD registries are known as second-level domains (SLDs). For the domain name “tut.net”, “.net” is the TLD, and “tut” is the SLD. Domain name space is the ordered hierarchical set of all possible domain names either in use or to be used for locating an IP address on the Internet. TLDs are known as top-level domains because they comprise the highest-order name space available on the Internet. Second-level domains, as well as third-level domains (3LDs) such as “king.tut.net”, are subsidiary to TLDs in the hierarchy of the Internet's DNS.
URLs are used in media and written in documents or typed within e-mail, and data files, etc. as a means to make reference to online content that helps express the context of the ideas one wishes to communicate. URLs are generally written in an abbreviated manner as partial URLs or domain names (e.g., “http://www.example.com” is the URL, “www.example.com” is the FQDN, and “example.com” is the domain name). During the early stages of commercialization on the Internet, businesses displayed the full URL when advertising a commercial or display ad as a means to locate such resources on the Internet.
Improvements have been made to recognize partial URLs when entered in the location field of a web browser or network accessible device for automatically appending protocol information so a full URL request can be made. By submitting a domain name or FQDN in the location field, the browser modifies the request by adjusting the partial URL and adding “http://” in front of the domain name or FQDN in order to construct a valid URL. As a result of this convenience, companies have modified their advertising and distribution of URLs through print, film, radio, television and other media as “example.com” or “www.example.com” instead of the URL “http://www.example.com”. Though a helpful mnemonic for consumers to more readily identify and access the location and origin of goods and services on a public network such as the Internet, the mnemonic is only applicable when using a command line of a device or location field of a web browser program as a means to access the advertised web site.
U.S. Provisional Application Ser. No. 60/143,859 filed Jul. 15, 1999, by Schneider entitled “Method and apparatus for generation, registration, resolution, and emulation of name space”, now abandoned, uses a domain name having a top level domain alias (TLDA) to simultaneously access and search a given resource demonstrating the combination of both resolution and search services. For instance, when input is received and processed such as “http://example.44106”, steps are performed to determine that “.44106” is not a resolvable TLD and may be processed instead as a search term. Steps may then be performed to translate input into a valid URI such as “http://example.com/weather.cgi?zip=44106”. When the URI is accessed, a CGI script called “weather” is executed passing the value “44106” for the name “zip”, which in this case represents a zip code. By so doing a fictitious name may be used to simultaneously access both a resource and search request.
U.S. Provisional Application Ser. No. 60/152,015 filed Sep. 1, 1999, by Schneider, et al., entitled “Method and apparatus for using a portion of a URI as a search request.” generates a shorter URI on the fly as a substitute for longer URIs that reflect the results of queries or search requests. For instance, when “http://update.to/news” is received as input it may be determined that no such URI exists and, in response, create the URI on the fly as a means to access content from a longer URI such as:    “http://update.to/cgi-bin/update.cgi?search=news”.
This clearly demonstrates the need for methods of encouraging the creative use of URIs to access resources. Accordingly, in light of the above, there is a strong need in the art for a system and method to improve how resources and content including advertising, search terms, and available identifiers may be accessed.